#ifndef __UDT_SUBSYSTEM__H
#define __UDT_SUBSYSTEM__H

#include <Poco/Util/Subsystem.h>
#include <Poco/SharedPtr.h>
#include <UDTServer.h>
#include <UDPServer.h>

class UDTSubsystem :
	public Poco::Util::Subsystem
{
public:
	UDTSubsystem(void);
	virtual ~UDTSubsystem(void);

	const char* name()const {return "UDTSubsystem" ;}
	virtual void initialize(Poco::Util::Application& app) ;
	/// Initializes the subsystem.

	virtual void uninitialize() ;
	/// Uninitializes the subsystem. 
public:

private:
	Poco::SharedPtr< UDTServer > iUdtServer;
	Poco::SharedPtr<UDPServer> iUDPServer;
};

#endif
